package com.chushouya.order.service.admin;


import com.chushouya.order.dao.entity.OrderEntity;
import com.chushouya.order.dao.entity.OrderExtendEntity;
import com.chushouya.order.dto.api.partnernotify.NotifyQueue;

public interface PartnerStatusNotifyService {

    /**
     * 调度中心
     */
    void controlOrderNotify(NotifyQueue dto);

    /**
     * 订单创建 CREATE
     */
    void createNotify(OrderEntity orderEntity, OrderExtendEntity orderExtendEntity, String notifyUrl, String remark);

    /**
     * 用户寄出回收产品 DELIVERY
     */
    void deliveryNotify(OrderEntity orderEntity,String notifyUrl,String remark);

    /**
     * DISPATCH | 订单派单成功
     */
    void dispatchNotify(OrderEntity orderEntity,String notifyUrl,String remark);

    /**
     * CONFIRM | 工程师接单
     */
    void confirmNotify(OrderEntity orderEntity,String notifyUrl,String remark);

    /**
     * VISIT | 工程师上门
     */
    void visitNotify(OrderEntity orderEntity,String notifyUrl,String remark);

    /**
     * CANCEL | 订单取消
     */
    void cancelNotify(OrderEntity orderEntity,String notifyUrl,String remark);

    /**
     * COMPLETE | 订单完成
     */
    void completeNotify(OrderEntity orderEntity,String notifyUrl,String remark);

    /**
     * RECEIVE | 订单签收
     */
    void receiveNotify(OrderEntity orderEntity,String notifyUrl,String remark);

    /**
     * QUALITY | 订单质检
     */
    void qualityNotify(OrderEntity orderEntity,String notifyUrl,String remark);
}
